﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Sio.Mdm.Server;
using Sio.Mdm.Types;
using Sio.Mdm.Entities;
using IDM.Types;

namespace IDM.BF.AdministrationService
{
    public interface IRolesService : Sio.Mdm.BL.Base.IBaseService<Role>
    {
        /// <summary>
        /// Select parent <see cref="Role"/> for passed <paramref name="role"/>
        /// </summary>
        /// <param name="role">Role to select parent for</param>
        /// <returns>null if operation succedded</returns>
        Result SelectParent(Role role, Session session);
        /// <summary>
        /// Select childs for passed <paramref name="role"/>
        /// </summary>
        /// <param name="role"><see cref="Role"/> to select child roles for</param>
        /// <param name="childs"></param>
        /// <returns>null if operation succedded</returns>
        Result SelectChilds(Role role, Session session);
    }
}
